The present invention pertains to the field of wireless communication technology. More specifically, the present invention pertains to a method and apparatus that uses parallel operations to speed the process of acquiring Code Division Multiple Access (CDMA).
Wireless telephony, e.g. cellular phone use, has become a widely available mode of communication in modern society. Code Division Multiple Access (CDMA) spread spectrum systems are among the most commonly deployed wireless technology.
CDMA utilizes digital encoding for every telephone call or data transmission in order to provide privacy and security. Unique codes are assigned to every communication, which distinguish it from the multitude of calls simultaneously transmitted over the same broadcast spectrum. Users share time and frequency allocations and are channelized by unique assigned codes. The signals are separated at the receiver in a known manner so that the receiver accepts only signals from the desired channel.
Cell phones can roam throughout the country and appear to operate seamlessly to the user. This feature is possible because hundreds of base stations, located throughout the country, allow relatively local transmission and reception of data signals. The roaming feature of cell phones is accomplished by using hard and soft hand-offs between base stations. However, because cell phones have the capability to communicate with any of the different base stations, assuming contractual access and operating system compatibility, a system and method is needed for the cell phone to determine if there are any nearby base stations and which of them have the strongest power signal. Furthermore, a need for a method of how to identify each of the base stations is required.
It is desirable for the cell phone to communicate with the base stations having the strongest signal. This will typically provide the best quality of service in terms of signal reproduction at the cell phone. While the strongest power signal is usually the closest base station, natural or man-made geographical obstructions may prevent the closest base-station from providing the strongest signal. Thus, for example, the second-closest base station may provide the strongest transmission signal. The strongest signal is rated in terms of the power of the signal received at the cell phone.
CDMA systems transmit waveforms from multiple base stations occupying the same frequency band. Hence, multiple signals combine their amplitude on the airwaves. However, because these signals are encoded with a pseudonoise (PN) sequence, they have special properties. First, they can only be interpreted by a receiver that knows the given PN sequence and the phase shift used on the PN sequence. To a user without the code, the signal appears as noise. To the user given the code, the signal is only not noise because it contains usable information once the signal is decoded. Hence the term xe2x80x9cpseudoxe2x80x9d noise. A CDMA standard establishes a plurality of usable codes which are assigned to users for channelization. The term code division multiple access is descriptive of the process because it divides a limited number of usable codes among multiple users according to their need, capability, and contracted service.
CDMA digital cellular systems, such as that specified in the IS-95 CDMA standard, uses two specific pilot PN code sequences, e.g. one for the in-phase condition and one for the quadrature phase condition, that every base station transmits in quadrature as a pilot signal. The pilot signal is a pseudonoise binary sequence which may be generated by a Linear Feedback Shift Register (LFSR). Each base station is assigned a phase shift at which it can transmit the specific codes. Cell phones can identify and distinguish different base stations by detecting pilot energy at different phase shifts. Hence, the phase shift is the key to uniquely identifying local base stations.
Referring to Prior Art FIG. 1a, a circular diagram 100 of the pilot PN code sequence is illustrated. Box 102a represents the first bit of the 32,768 binary values used for the PN code sequence. This PN code sequence is one of the two PN code sequences used in the quadrature modulation. Similarly, box 102b represents the last bit of the 32,678 binary values. Hence, the sequence has a period of 32,768 values. Because the code is periodic, it repeats itself. The pilot PN sequence can be phase shifted among a plurality of base stations so that they do not all transmit the same code at the same phase shift. Rather, they transmit the same code at different phase shifts. Because the sequence is a PN sequence, all transmissions of the code appear as pseudonoise unless they are evaluated at the precise phase shift at which they are transmitted. The IS-95 CDMA standard divides the length of the 32,768 bit pilot PN sequence into a total of 512 possible phase shifts, each separated by a phase shift of 64 bits, e.g. 32,768/64=512, as shown by item 106. The base stations are synchronized to each other by a standard time process, such as Global Positioning System (GPS) timing.
A cell phone checks for phase shift by generating the same single specific code sequence inside the cell phone itself, then correlating it to the input signal. However, while the cell phone can easily generate the single specific code, it does not know the phase shift of the base stations with respect to the received input signal. This is because the cell phone is not synchronized to any base stations when it is first trying to acquire base stations in the CDMA system. Thus, the cell phone must phase shift its internally generated specific code, by offsetting the code sequence, and then correlate it again to the input signal. A good correlation value usually means that two identical signals, e.g. identical PN sequences, are in phase. This process of phase shifting the internally generated specific code and correlating it to the input signal is repeated until the cell phone has checked all the possible phase shifts of the code. The process and apparatus used to phase shift the specific code and to perform the checking is referred to as a searcher, among other names. The base stations constantly transmit their pilot signal in a periodic fashion, so it is always available to be received by the cell phone, barring interference, etc.
Referring to Prior Art FIG. 1b, a search/correlate operation on a hypothetical PN pilot signal 150, transmitted at different phases from different base stations, and on a pilot PN sequence, provided within a cell phone, is illustrated. This figure provides an illustration of how a pilot PN sequence is transmitted from a plurality of base stations, of when the pilot PN sequence is generated within a cell phone, and how the search proceeds to phase shift the internally generated pilot PN sequence to check all the different possible phase shifts of a PN sequence transmitted by a base station.
Prior Art FIG. 1b is comprised of a transmitted PN pilot signal 152a, with a phase shift, from Base Station A; a transmitted PN pilot signal 152b, with a phase shift, from Base Station B; and a transmitted PN pilot signal 152c, with a phase shift, from Base Station C. The three dots appearing throughout the figures represents the periodic and repeating nature of the transmitted PN pilot signal. Each PN pilot signal from the base stations is the same PN sequence of 32,768 bits. However, the starting point, and subsequent sequential bit locations, are offset among between the base stations by the 64 bit offset specified in the IS-95 CDMA standard. Hence, Base station B signal 152b is offset from Base station A signal 152a by an offset 156a, which is a multiple of 64 bits. Similarly, Base station C is offset from base station B by an offset 156b, which is a multiple of 64 bits.
In another scenario, there is no input signal because there is no service provided in a specific region, or because the signal is blocked by a natural or man-made obstruction. The controller within the cell phone checks the power level of all the combinations of input signal over the different phase shifted internally generated specific code to find the highest power base station, the second highest power base station, etc.
In the prior art, the internally generated pilot PN sequence 152d, is correlated one bit at a time with the incoming signal. A conventional correlation/search may be performed by multiplying the signal and sequence bit by-bit, summing the result over a dwell time to generate a correlation, and squaring the sum to minimize frequency error, and thereby obtain the power of the correlated signal. The initial internally generated pilot PN sequence 154a is initialized from a given starting point, e.g. no phase shift, when a cell phone is turned on since the sequence has nothing else to which it may be synchronized.
In the prior art, after the correlation/search is performed for a given pilot PN sequence, e.g. with no phase shift, the internal pilot PN sequence is phase shifted one bit, e.g. by initializing the LFSR with a different mask input. The mask input effectively generates a phase shift in the PN sequence. Then the cell phone repeats the correlation/search process for the newly phase-shifted pilot PN sequence. The process of phase shifting the internal pilot PN sequence is continued until an internal pilot PN sequence is generated for every phase shift, e.g. about 32,768 shifts, including the no phase-shift version.
As indicated in Prior Art FIG. 1b, the search/correlate operation is performed on each internal pilot PN sequence, in a serial fashion. However, because the search/correlation operation has a long dwell time for each phase shift of the PN sequence evaluated, and because the pilot PN sequence is so long, the overall procedure is very time consuming. Thus, a conventional cell phone may take up to 30 seconds or longer to acquire the CDMA system, e.g. established the base stations with which it will communicate. A long search time has several negative consequences. First, it is inconvenient for a user to wait for a searching and acquisition operation. Second, the correlation information obtained at the beginning of a search/correlation operation may be invalid at the end of the search/correlation operation if the operation takes too much time. This is because communication variables can change so quickly. For example, transmission and reception variables such as drift, bounce, multipathing, interference, physical obstructions, and mobile phone location can all change quickly when dealing with a mobile wireless communications system. Hence, a need arises for a more expedient method to perform a search/correlation operation.
In summary, a system and method is needed for the cell phone to identify nearby base stations and to determine the phases of associated multi-path components. Furthermore, a need exists for a method of how to identify each of the base stations. Additionally, a need arises for a more expedient method to perform a search/correlation operation.
The present invention provides a method and apparatus to identify nearby base stations and to determine the phases of associated multi-path components. Additionally, the present invention provides a more expedient method to perform a search/correlation operation.
In one embodiment, the present invention recites a method comprising several steps. When a cell phone is turned on, it tries to acquire the CDMA system by searching for a local base station with a strong signal. The strength of the base station""s signal is determined by evaluating a pilot signal having a known PN sequence. Base stations transmit these pilot signals so that users can identify the phase shift and power level of the balance of the signals transmitted by the base station. For best transmission quality, the base station with the highest power level is typically preferred. The cell phone internally generates the same pilot PN sequence that is transmitted from the base station. However, the phase of the incoming PN sequence signal is not known. Hence, the internally generated PN sequence can start at any point in the PN sequence, as long as subsequent indexing and phase shifting accounts for the actual start point. The cell phone receives an in-phase (I) component and a quadrature phase (Q) component of an input signal which it tries to match with its own internal in-phase (I) PN sequence and quadrature phase (Q) PN sequence, respectively.
The input signal represents the composite signal from all nearby base station transmitters across a common bandwidth but having a different phase shift in its pilot PN code for each base station. In the present embodiment, a random search/correlate rate of sixteen is chosen. The cell phone generates a set of sixteen sequential PN code values for the I phase and sixteen sequential PN code values for the Q phase, for correlation with the respective I phase and Q phase of the first input signal sample. Instead of simply correlating a single input signal sample times a single internally generated PN code sequence, the present invention correlates two samples from the input, e.g. xc2xd chip resolution, with sixteen sequential PN code sequences and accumulates the results in thirty-two memory registers for each phase. These operations will occur within the time period of the input sample. Thirty-two accumulators will be required for the I phase, and 32 accumulators will be required for the Q phase.
After the correlation of the first sixteen sequential PN code values for each phase, a new input signal sample is received, and the PN code sequence for each phase is indexed to accommodate a new sequential PN code value provided for each phase. The new single input signal sample, for each phase, is correlated to each of the sixteen PN code values, for each phase, and accumulated in the respective accumulator. In this fashion, the present invention performs a parallel correlation operation that has a width of sixteen phase shifts. In order to be performed in parallel, the correlation operation between a single input signal sample and sixteen PN code sequences has to be performed at a rate sixteen times faster than the rate the input signal is supplied. This operation occurs in parallel for both the I phase and the Q phase. Furthermore, parallel engines can carry on duplicate operations on the I phase and the Q phase if greater precision is desired for the input sample.
With an input signal rate of 1.2288 MHz, the internal correlation operation will perform at a clock speed of approximately 19.6608 MHz to perform sixteen parallel correlation operations. Correlation is understood to include despreading and accumulation of the input signal sample and the PN sequence values. The internal PN sequence is continually indexed, the input signal samples are continuously received, and the correlation between the two is continued until a desired number of cycles have been accumulated, or integrated. The integration used for this step can be referred to as coherent integration.
After the number of cycles specified for the first integration has been accomplished, the accumulated values from the correlation operation, for the I and Q phases, are squared, then summed to provide an energy value, then stored in a second set of accumulators, referred to herein as energy accumulators. The product accumulators are then reset to zero. These steps represent a single cycle with respect to the second set of accumulators, or integrators. The integration used in this step can be referred to as noncoherent integration.
Energy accumulators continue to accumulate energy values for a specified number of cycles. The number of cycles in the first integration times the number of cycles in the second integration is referred to as the dwell time. After the number of cycles for the second integration has been satisfied, several things occur. First the values from the energy accumulators are transmitted to a controller for evaluation of the energy signal values and subsequent ranking. Second, the energy accumulators are reset. Third, the internally generated PN sequence is phase shifted to a new window. For example, if phase shifts 0 through 15 were represented by the PN sequence used through the dwell time, then the PN sequences are indexed to effectively provide phase shifts of 16 through 31. Then the aforementioned correlation and accumulation operations are repeated for the specified dwell time. In this manner, the internal PN sequence is systematically phase shifted all the way around the PN sequence period, and correlated to the incoming signal.
Thus, the present invention provides a method that performs a parallel correlation/search operation. In this manner, the present invention can obtain the CDMA system at least sixteen times faster than the conventional serial method.
These and other objects and advantages of the present invention will no doubt become obvious to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments illustrated in the various drawing figures.